# 正则表达式的库 re
import re
# match函数，匹配模式与字符串，返回包含匹配模式和匹配结果区间的对象
result = re.match('hello','hello world')
print(result)

# 预设匹配模式
# \w 匹配数字字母下划线 \W 匹配非数字字母下划线
result = re.match(r'\w','qwq')
print(result)
# \s 匹配空白字符 \S 匹配非空白字符
result = re.match(r'\s*','  w')
print(result)
# .匹配任意字符
result = re.match(r'^code\d-\d-.+$','code5-2-random')
print(result)
# []匹配 满足中括号内元素
result = re.match(r'^[abcd]*$','abc')
print(result)
# {} 精准/范围内 匹配次数
result = re.match('^abc{1,3}$','abcc')
print(result)

# 练习1：身份证号
## 18位数字或者17位数+x
reg = r"^\d{17}[\dX]$"
id_card = "123456781011121314"
result = re.match(reg,id_card)
print(result)

# 练习2:手机号码
reg_phone = r"1/d{10}"